package es.aa.android.cartomatic.interfaces.da;

import android.content.Context;

import java.util.ArrayList;
import java.util.List;

import es.aa.android.cartomatic.domain.Card;
import es.aa.android.cartomatic.domain.Deck;
import es.aa.android.cartomatic.exceptions.DataAccessException;

/**
 * Created by 0256SergyCatalufo on 30/08/2014.
 */
public interface ISQLiteAccess {

    void writeDeck(Context context, Deck deck) throws DataAccessException;

    Deck readDeck(Context context, int idDeck) throws DataAccessException;

    //void deleteDeck(Context context, int idDeck);

    List<Deck> readDeckLibrary(Context context) throws DataAccessException;
    
    List<Deck> readDecksForOptions(Context context) throws DataAccessException;

    void writeCardOnDeck(Context context, int idDeck, ArrayList<Integer> idCard) throws DataAccessException;

    void writeCard(Context context, Card card) throws DataAccessException;

    Card readCard(Context context, int idCard) throws DataAccessException;

    //void deleteDeck(Context context, int idCard);

    List<Card> readCardLibrary(Context context) throws DataAccessException;
    
    void deleteCardOnDeck(Context context, int idDeck, ArrayList<Integer> idCard);

}
